Skip to main content

Introduction

Check the status of your video generation tasks and retrieve download URLs when completed. This guide covers polling strategies and status interpretation for all video types (Avatar Videos, Product Videos, and Template Videos). Use webhooks for instant notifications or polling for status checks.

Key Features

Real-Time Status

Get current processing status instantly

Video Download

Retrieve final video URLs when ready

Error Details

Get detailed error messages if failed

Metadata

Access duration, cover images, and more

Workflow Overview

Video generation follows a standard status flow:
Videos typically take 2-10 minutes to generate depending on length and complexity. Use webhooks for instant notifications instead of polling.

Quick Start

Status Values

Recommended: Use [Webhooks](/api-reference/v2/API Documentation/WebhookIntegration) instead of polling for better performance and instant notifications.

Code Examples

Scenario 1: Check Avatar Video Status

Poll for avatar video completion:
Response (Processing):
Response (Completed):
When status is completed, download the video from video_url.

Scenario 1: Check Product Video Status

Response (Completed):
Response (Failed):
If status is failed, check the error object for details and retry with corrected parameters.

Scenario 1: Check Template Video Status

Response (Completed):

Use Case Examples

When to Use: When webhooks are not available or you need immediate status checks.Recommended Schedule:
  • Wait 10-15 seconds before first poll
  • Poll every 10 seconds for first minute
  • Increase to 30 seconds, then 60 seconds
  • Stop after 10 minutes and check for issues
Do not poll faster than every 5 seconds to avoid rate limiting.
When to Use: Recommended for production applications.Advantages:
  • ✅ No polling overhead
  • ✅ Instant notifications
  • ✅ Reduced API calls
  • ✅ Better scalability
  • ✅ Lower latency
See [Webhook Integration](/api-reference/v2/API Documentation/WebhookIntegration) for setup.
When to Use: Checking status of multiple videos.Strategy:
  • Use list endpoints (/v2/template_videos, /v2/product_videos) to get status of multiple videos
  • Filter by status to find completed/failed videos
  • Process completed videos, retry failed ones

Tips for Best Results

Polling Strategy:
  • Wait 10-15 seconds before first poll (videos rarely complete faster)
  • Poll every 10 seconds for first minute
  • Increase to 30 seconds, then 60 seconds
  • Stop after 10 minutes and check for issues
Use Webhooks Instead:
  • Use [Webhooks](/api-reference/v2/API Documentation/WebhookIntegration) instead of polling for better performance
  • Instant notifications when videos are ready
  • Reduced API calls and better scalability
  • Lower latency for end users
Polling Schedule: Webhook vs Polling:

Response Field Reference

Completed Video Response

Processing Video Response

Failed Video Response


Troubleshooting

Error: Video ID does not existSolutions:
  • Verify video ID is correct
  • Check if video creation succeeded
  • Video IDs are case-sensitive
  • Ensure you’re using the correct endpoint for video type
Error: Status is failed with error objectCommon Causes:
  • Insufficient media quality
  • Invalid avatar/voice combination
  • Script too long for video length
  • API quota exceeded
  • Invalid template variables
Solutions:
  • Check error message in response
  • Verify all input parameters are valid
  • Retry with corrected parameters
  • Check Error Handling Guide
Issue: Video stuck in processing > 15 minutesSolutions:
  • Contact support with video ID
  • Check Status Page
  • Retry video creation
  • Verify video type and parameters
Error: Too many requestsSolutions:
  • Reduce polling frequency (minimum 5 seconds between polls)
  • Use webhooks instead of polling
  • Check Rate Limits
  • Implement exponential backoff

Webhook Integration

Better alternative to polling

Create Avatar Videos

Start video generation

Error Handling

Understand error responses

Rate Limits

API usage limits